<template>
	<view class="file_download">
		<div style="margin-top: 10px">下载中...</div>
	</view>
</template>
<script>
	import {
		Api
	} from '@/utils/Api'
	export default {
		props: {},
		data() {
			return {
				fileList: []
			}
		},
		onLoad: function(options) {
			console.log('options', options);
			// let records = JSON.parse(options.record);
			let that = this
			let url = decodeURIComponent(options.url) // 解码
			let p = url.lastIndexOf('../');
			if (p != -1) {
				url = url.substring(p + 2);
			}
			if (url.indexOf('/') != 0) {
				url = '/' + url
			}
			let baseUrl = Api.baseUrl;
			url = baseUrl + url;
			console.log('onLoad ' + url);
			//打开加载框
			// uni.showLoading();
			//文件下载
			uni.downloadFile({
				url: url,
				//设置请求头
				// header: {
				// 	//设置请求格式，可以不要
				// 	'content-type': 'application/json',
				// 	"skey": records.skey
				// },
				success: (res) => {
					console.log(res);
					if (res.statusCode === 200) {
						//隐藏加载框
						uni.hideLoading();
						//文件保存到本地
						uni.saveFile({
							//临时路径
							tempFilePath: res.tempFilePath,
							//这里返回的参数res是文件的保存路径
							success: function(res) {
								// console.log('打印res',res)
								//提示框
								uni.showToast({
									icon: 'success',
									mask: true,
									// title: '文件已保存：' + res.savedFilePath, //保存路径
									title: '下载成功',
									duration: 2000,
								});

								//自动打开文档查看
								setTimeout(() => {
									var filePath = res.savedFilePath;
									//新开页面打开文档，支持格式：doc, xls, ppt, pdf, docx, xlsx, pptx。
									uni.openDocument({
										filePath: filePath,
										showMenu: true,
										success: function(res) {
											console.log('打开文档成功');
										}
									});
								}, 2000)
							}
						});
					}
				},
				fail: (err) => {
					uni.showToast({
						icon: 'none',
						mask: true,
						title: '失败请重新下载',
					});
				}
			});
		},
		methods: {}
	}
</script>

<style lang="less" scoped>
	.file_download {
		width: 100%;
	}
</style>